[INFO] fetching crate rdms 0.0.1...
[INFO] checking rdms-0.0.1 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate rdms 0.0.1 into /workspace/builds/worker-3-tc1/source
[INFO] validating manifest of crates.io crate rdms 0.0.1 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate rdms 0.0.1
[INFO] finished tweaking crates.io crate rdms 0.0.1
[INFO] tweaked toml for crates.io crate rdms 0.0.1 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded unicode_reader v0.1.1
[INFO] [stderr]   Downloaded jsondata v0.6.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f5d613b38821cfaaedafb3c7782c90029e928aa3b08567f37b859904b773828d
[INFO] running `Command { std: "docker" "start" "-a" "f5d613b38821cfaaedafb3c7782c90029e928aa3b08567f37b859904b773828d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f5d613b38821cfaaedafb3c7782c90029e928aa3b08567f37b859904b773828d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f5d613b38821cfaaedafb3c7782c90029e928aa3b08567f37b859904b773828d", kill_on_drop: false }`
[INFO] [stdout] f5d613b38821cfaaedafb3c7782c90029e928aa3b08567f37b859904b773828d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ee742ea8d0b9aad85d8ed23729e5d0c2f594c934136d110f4eea2c1913a2bb7a
[INFO] running `Command { std: "docker" "start" "-a" "ee742ea8d0b9aad85d8ed23729e5d0c2f594c934136d110f4eea2c1913a2bb7a", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]     Checking rand_core v0.4.2
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]     Checking unicode_reader v0.1.1
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]     Checking jsondata v0.6.2
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling structopt-derive v0.2.18
[INFO] [stderr]     Checking structopt v0.2.18
[INFO] [stderr]     Checking rdms v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/robt.rs:943:10
[INFO] [stdout]     |
[INFO] [stdout] 943 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `bind_by_move_pattern_guards` has been stable since 1.39.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> src/lib.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | #![feature(bind_by_move_pattern_guards)]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `drain_filter`
[INFO] [stdout]   --> src/lib.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | #![feature(drain_filter)]
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/robt.rs:943:10
[INFO] [stdout]     |
[INFO] [stdout] 943 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/spinlock.rs:84:31
[INFO] [stdout]    |
[INFO] [stdout] 84 |                 if self.value.compare_and_swap(c, n, SeqCst) == c {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/spinlock.rs:108:31
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 if self.value.compare_and_swap(c, n, SeqCst) == c {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/spinlock.rs:122:31
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 if self.value.compare_and_swap(c, n, SeqCst) == c {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/spinlock.rs:160:28
[INFO] [stdout]     |
[INFO] [stdout] 160 |         if self.door.value.compare_and_swap(c, 0, SeqCst) != c {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/sync_writer.rs:22:25
[INFO] [stdout]    |
[INFO] [stdout] 22 |         if self.writers.compare_and_swap(0, 1, AcqRel) != 0 {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/sync_writer.rs:35:31
[INFO] [stdout]    |
[INFO] [stdout] 35 |         if self.fence.writers.compare_and_swap(1, 0, AcqRel) != 1 {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `bind_by_move_pattern_guards` has been stable since 1.39.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> src/lib.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | #![feature(bind_by_move_pattern_guards)]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `drain_filter`
[INFO] [stdout]   --> src/lib.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | #![feature(drain_filter)]
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `drain_filter` found for struct `Vec<Journal<K, V>>` in the current scope
[INFO] [stdout]    --> src/wal.rs:300:18
[INFO] [stdout]     |
[INFO] [stdout] 298 |               let journals: Vec<Journal<K, V>> = self
[INFO] [stdout]     |  ________________________________________________-
[INFO] [stdout] 299 | |                 .journals
[INFO] [stdout] 300 | |                 .drain_filter(|jrn| jrn.shard_id() == id)
[INFO] [stdout]     | |                 -^^^^^^^^^^^^ method not found in `Vec<Journal<K, V>>`
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/spinlock.rs:84:31
[INFO] [stdout]    |
[INFO] [stdout] 84 |                 if self.value.compare_and_swap(c, n, SeqCst) == c {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/spinlock.rs:108:31
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 if self.value.compare_and_swap(c, n, SeqCst) == c {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/spinlock.rs:122:31
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 if self.value.compare_and_swap(c, n, SeqCst) == c {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/spinlock.rs:160:28
[INFO] [stdout]     |
[INFO] [stdout] 160 |         if self.door.value.compare_and_swap(c, 0, SeqCst) != c {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/sync_writer.rs:22:25
[INFO] [stdout]    |
[INFO] [stdout] 22 |         if self.writers.compare_and_swap(0, 1, AcqRel) != 0 {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/sync_writer.rs:35:31
[INFO] [stdout]    |
[INFO] [stdout] 35 |         if self.fence.writers.compare_and_swap(1, 0, AcqRel) != 1 {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 8 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0599, E0635.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rdms` (lib) due to 3 previous errors; 8 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0599]: no method named `drain_filter` found for struct `Vec<wal::Journal<K, V>>` in the current scope
[INFO] [stdout]    --> src/wal.rs:300:18
[INFO] [stdout]     |
[INFO] [stdout] 298 |               let journals: Vec<Journal<K, V>> = self
[INFO] [stdout]     |  ________________________________________________-
[INFO] [stdout] 299 | |                 .journals
[INFO] [stdout] 300 | |                 .drain_filter(|jrn| jrn.shard_id() == id)
[INFO] [stdout]     | |                 -^^^^^^^^^^^^ method not found in `Vec<Journal<K, V>>`
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 8 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0599, E0635.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rdms` (lib test) due to 3 previous errors; 8 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "ee742ea8d0b9aad85d8ed23729e5d0c2f594c934136d110f4eea2c1913a2bb7a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ee742ea8d0b9aad85d8ed23729e5d0c2f594c934136d110f4eea2c1913a2bb7a", kill_on_drop: false }`
[INFO] [stdout] ee742ea8d0b9aad85d8ed23729e5d0c2f594c934136d110f4eea2c1913a2bb7a
[INFO] checking rdms-0.0.1 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate rdms 0.0.1 into /workspace/builds/worker-3-tc2/source
[INFO] validating manifest of crates.io crate rdms 0.0.1 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate rdms 0.0.1
[INFO] finished tweaking crates.io crate rdms 0.0.1
[INFO] tweaked toml for crates.io crate rdms 0.0.1 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1d4cd097f11ecd36d6f1d700ba2076b7606fe78445d440f0c9dae2366e0b0ce2
[INFO] running `Command { std: "docker" "start" "-a" "1d4cd097f11ecd36d6f1d700ba2076b7606fe78445d440f0c9dae2366e0b0ce2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1d4cd097f11ecd36d6f1d700ba2076b7606fe78445d440f0c9dae2366e0b0ce2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1d4cd097f11ecd36d6f1d700ba2076b7606fe78445d440f0c9dae2366e0b0ce2", kill_on_drop: false }`
[INFO] [stdout] 1d4cd097f11ecd36d6f1d700ba2076b7606fe78445d440f0c9dae2366e0b0ce2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 229cf7c427f98ae9524b94f6b2298df3d718419dba8372f69f37392f41f036d9
[INFO] running `Command { std: "docker" "start" "-a" "229cf7c427f98ae9524b94f6b2298df3d718419dba8372f69f37392f41f036d9", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]     Checking rand_core v0.4.2
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking unicode_reader v0.1.1
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]     Checking jsondata v0.6.2
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling structopt-derive v0.2.18
[INFO] [stderr]     Checking structopt v0.2.18
[INFO] [stderr]     Checking rdms v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/core.rs:872:31
[INFO] [stdout]     |
[INFO] [stdout] 872 |         let mut fail = seqnos[0..seqnos.len() - 1]
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/core.rs:874:25
[INFO] [stdout]     |
[INFO] [stdout] 874 |             .zip(seqnos[1..].into_iter())
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/vlog.rs:112:21
[INFO] [stdout]     |
[INFO] [stdout] 112 |                 buf[m..m + 8].copy_from_slice(&hdr1.to_be_bytes());
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/vlog.rs:143:25
[INFO] [stdout]     |
[INFO] [stdout] 143 |     value.decode(&block[8..])?;
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/vlog.rs:236:21
[INFO] [stdout]     |
[INFO] [stdout] 236 |                 buf[m..m + 8].copy_from_slice(&hdr1.to_be_bytes());
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/vlog.rs:252:25
[INFO] [stdout]     |
[INFO] [stdout] 252 |     delta.decode(&block[8..])?;
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/types.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         buf[n..n + scratch.len()].copy_from_slice(&scratch);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/types.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |         buf[n..].copy_from_slice(self);
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/types.rs:85:35
[INFO] [stdout]    |
[INFO] [stdout] 85 |         self.copy_from_slice(&buf[4..len + 4]);
[INFO] [stdout]    |                                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/types.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |         buf[n..].copy_from_slice(&self.to_be_bytes());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/types.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         buf[n..].copy_from_slice(&self.to_be_bytes());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:519:21
[INFO] [stdout]     |
[INFO] [stdout] 519 |                 hdr[0..8].copy_from_slice(&fpos.to_be_bytes());
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:522:21
[INFO] [stdout]     |
[INFO] [stdout] 522 |                 hdr[8..16].copy_from_slice(&(md.len() as u64).to_be_bytes());
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:526:21
[INFO] [stdout]     |
[INFO] [stdout] 526 |                 hdr[16..24].copy_from_slice(&(s.len() as u64).to_be_bytes());
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:530:21
[INFO] [stdout]     |
[INFO] [stdout] 530 |                 hdr[24..32].copy_from_slice(&(data.len() as u64).to_be_bytes());
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:542:23
[INFO] [stdout]     |
[INFO] [stdout] 542 |     block.copy_within(0..m, shift);
[INFO] [stdout]     |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:572:39
[INFO] [stdout]     |
[INFO] [stdout] 572 |     let n_md = u64::from_be_bytes(hdr[8..16].try_into().unwrap()) as usize;
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:573:42
[INFO] [stdout]     |
[INFO] [stdout] 573 |     let n_stats = u64::from_be_bytes(hdr[16..24].try_into().unwrap()) as usize;
[INFO] [stdout]     |                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:574:43
[INFO] [stdout]     |
[INFO] [stdout] 574 |     let n_marker = u64::from_be_bytes(hdr[24..32].try_into().unwrap()) as usize;
[INFO] [stdout]     |                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:587:24
[INFO] [stdout]     |
[INFO] [stdout] 587 |     let marker = block[x..y].to_vec();
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:594:44
[INFO] [stdout]     |
[INFO] [stdout] 594 |     let stats = std::str::from_utf8(&block[x..y])?.to_string();
[INFO] [stdout]     |                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:597:26
[INFO] [stdout]     |
[INFO] [stdout] 597 |     let app_data = block[x..y].to_vec();
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/robt.rs:943:10
[INFO] [stdout]     |
[INFO] [stdout] 943 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_entry.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 |             buf[m..m + 8].copy_from_slice(&hdr1);
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_entry.rs:69:17
[INFO] [stdout]    |
[INFO] [stdout] 69 |             buf[m + 8..m + 16].copy_from_slice(&fpos.to_be_bytes());
[INFO] [stdout]    |                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_entry.rs:82:45
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let hdr1 = u64::from_be_bytes(entry[0..8].try_into().unwrap());
[INFO] [stdout]    |                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_entry.rs:83:45
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let fpos = u64::from_be_bytes(entry[8..16].try_into().unwrap());
[INFO] [stdout]    |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_entry.rs:95:49
[INFO] [stdout]    |
[INFO] [stdout] 95 |             let hdr1 = u64::from_be_bytes(entry[0..8].try_into().unwrap());
[INFO] [stdout]    |                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_entry.rs:99:27
[INFO] [stdout]    |
[INFO] [stdout] 99 |         key.decode(&entry[16..16 + klen])?;
[INFO] [stdout]    |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:197:40
[INFO] [stdout]     |
[INFO] [stdout] 197 |             let scratch: [u8; 8] = buf[16..24].try_into().unwrap();
[INFO] [stdout]     |                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:199:17
[INFO] [stdout]     |
[INFO] [stdout] 199 |             buf[16..24].copy_from_slice(&fpos.to_be_bytes());
[INFO] [stdout]     |                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:211:47
[INFO] [stdout]     |
[INFO] [stdout] 211 |             let hdr1 = u64::from_be_bytes(buf[0..8].try_into().unwrap());
[INFO] [stdout]     |                                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:215:44
[INFO] [stdout]     |
[INFO] [stdout] 215 |         let seqno = u64::from_be_bytes(buf[8..16].try_into().unwrap());
[INFO] [stdout]     |                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:216:43
[INFO] [stdout]     |
[INFO] [stdout] 216 |         let fpos = u64::from_be_bytes(buf[16..24].try_into().unwrap());
[INFO] [stdout]     |                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:376:29
[INFO] [stdout]     |
[INFO] [stdout] 376 |         let hdr = &mut leaf[m..m + 24];
[INFO] [stdout]     |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:402:29
[INFO] [stdout]     |
[INFO] [stdout] 402 |         let hdr = &mut leaf[m..m + 24];
[INFO] [stdout]     |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:434:13
[INFO] [stdout]     |
[INFO] [stdout] 434 |         hdr[8..16].copy_from_slice(&hdr2);
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:435:13
[INFO] [stdout]     |
[INFO] [stdout] 435 |         hdr[16..24].copy_from_slice(&hdr3);
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:508:18
[INFO] [stdout]     |
[INFO] [stdout] 508 |         for i in 0..n_deltas {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:510:54
[INFO] [stdout]     |
[INFO] [stdout] 510 |             DiskDelta::<V>::re_encode_fpos(&mut leaf[n..], vpos);
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:516:41
[INFO] [stdout]     |
[INFO] [stdout] 516 |             let scratch: [u8; 8] = leaf[8..16].try_into().unwrap();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:520:41
[INFO] [stdout]     |
[INFO] [stdout] 520 |             let scratch: [u8; 8] = leaf[voff..voff + 8].try_into().unwrap();
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:522:18
[INFO] [stdout]     |
[INFO] [stdout] 522 |             leaf[voff..voff + 8].copy_from_slice(&fpos.to_be_bytes());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:545:45
[INFO] [stdout]     |
[INFO] [stdout] 545 |             let hdr1 = u64::from_be_bytes(e[0..8].try_into().unwrap());
[INFO] [stdout]     |                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:551:45
[INFO] [stdout]     |
[INFO] [stdout] 551 |             let hdr2 = u64::from_be_bytes(e[8..16].try_into().unwrap());
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:558:42
[INFO] [stdout]     |
[INFO] [stdout] 558 |         let seqno = u64::from_be_bytes(e[16..24].try_into().unwrap());
[INFO] [stdout]     |                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:561:23
[INFO] [stdout]     |
[INFO] [stdout] 561 |         key.decode(&e[24..24 + klen])?;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:567:49
[INFO] [stdout]     |
[INFO] [stdout] 567 |                 let fpos = u64::from_be_bytes(e[n..n + 8].try_into().unwrap());
[INFO] [stdout]     |                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:574:33
[INFO] [stdout]     |
[INFO] [stdout] 574 |                 value.decode(&e[n..n + vlen])?;
[INFO] [stdout]     |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:583:19
[INFO] [stdout]     |
[INFO] [stdout] 583 |         for _i in 0..n_deltas {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:584:52
[INFO] [stdout]     |
[INFO] [stdout] 584 |             deltas.push(DiskDelta::decode_delta(&e[n..])?);
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:596:49
[INFO] [stdout]     |
[INFO] [stdout] 596 |             let hdr1 = u64::from_be_bytes(entry[0..8].try_into().unwrap());
[INFO] [stdout]     |                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:600:27
[INFO] [stdout]     |
[INFO] [stdout] 600 |         key.decode(&entry[24..24 + klen])?;
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:154:40
[INFO] [stdout]     |
[INFO] [stdout] 154 |                     mblock.copy_within(0..m, adjust);
[INFO] [stdout]     |                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:164:28
[INFO] [stdout]     |
[INFO] [stdout] 164 |                     mblock[x..x + 4].copy_from_slice(&offset_bytes);
[INFO] [stdout]     |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:208:30
[INFO] [stdout]     |
[INFO] [stdout] 208 |         let offsets = &block[4..adjust] as *const [u8];
[INFO] [stdout]     |                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:326:34
[INFO] [stdout]     |
[INFO] [stdout] 326 |             let offset = offsets[idx..idx + 4].try_into().unwrap();
[INFO] [stdout]     |                                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_index.rs:328:44
[INFO] [stdout]     |
[INFO] [stdout] 328 |             Ok(MEntry::decode_entry(&block[offset..], index))
[INFO] [stdout]     |                                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:346:34
[INFO] [stdout]     |
[INFO] [stdout] 346 |             let offset = offsets[idx..idx + 4].try_into().unwrap();
[INFO] [stdout]     |                                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_index.rs:348:39
[INFO] [stdout]     |
[INFO] [stdout] 348 |             MEntry::decode_key(&block[offset..])
[INFO] [stdout]     |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:527:38
[INFO] [stdout]     |
[INFO] [stdout] 527 |                     leaf.copy_within(0..m, adjust);
[INFO] [stdout]     |                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:537:26
[INFO] [stdout]     |
[INFO] [stdout] 537 |                     leaf[x..x + 4].copy_from_slice(&offset_bytes);
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_index.rs:540:58
[INFO] [stdout]     |
[INFO] [stdout] 540 |                     zentries[i].re_encode_fpos(&mut leaf[j..], *vpos);
[INFO] [stdout]     |                                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:597:30
[INFO] [stdout]     |
[INFO] [stdout] 597 |         let offsets = &block[4..adjust] as *const [u8];
[INFO] [stdout]     |                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:684:34
[INFO] [stdout]     |
[INFO] [stdout] 684 |             let offset = offsets[idx..idx + 4].try_into().unwrap();
[INFO] [stdout]     |                                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_index.rs:686:32
[INFO] [stdout]     |
[INFO] [stdout] 686 |             let entry = &block[offset..];
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:699:30
[INFO] [stdout]     |
[INFO] [stdout] 699 |         let offset = offsets[idx..idx + 4].try_into().unwrap();
[INFO] [stdout]     |                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_index.rs:701:28
[INFO] [stdout]     |
[INFO] [stdout] 701 |         let entry = &block[offset..];
[INFO] [stdout]     |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wal.rs:310:41
[INFO] [stdout]     |
[INFO] [stdout] 310 |                 let zi = shard.journals[1..].iter();
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wal.rs:901:52
[INFO] [stdout]     |
[INFO] [stdout] 901 |                     m += batch.decode_refer(&block[m..], fpos + (m as u64))?;
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1387:50
[INFO] [stdout]      |
[INFO] [stdout] 1387 |         let start_index = u64::from_be_bytes(buf[32..40].try_into().unwrap());
[INFO] [stdout]      |                                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1388:49
[INFO] [stdout]      |
[INFO] [stdout] 1388 |         let last_index = u64::from_be_bytes(buf[40..48].try_into().unwrap());
[INFO] [stdout]      |                                                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1401:43
[INFO] [stdout]      |
[INFO] [stdout] 1401 |         let term = u64::from_be_bytes(buf[8..16].try_into().unwrap());
[INFO] [stdout]      |                                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1402:48
[INFO] [stdout]      |
[INFO] [stdout] 1402 |         let committed = u64::from_be_bytes(buf[16..24].try_into().unwrap());
[INFO] [stdout]      |                                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1403:48
[INFO] [stdout]      |
[INFO] [stdout] 1403 |         let persisted = u64::from_be_bytes(buf[24..32].try_into().unwrap());
[INFO] [stdout]      |                                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1404:51
[INFO] [stdout]      |
[INFO] [stdout] 1404 |         let _start_index = u64::from_be_bytes(buf[32..40].try_into().unwrap());
[INFO] [stdout]      |                                                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1405:50
[INFO] [stdout]      |
[INFO] [stdout] 1405 |         let _last_index = u64::from_be_bytes(buf[40..48].try_into().unwrap());
[INFO] [stdout]      |                                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1406:47
[INFO] [stdout]      |
[INFO] [stdout] 1406 |         let nentries = u64::from_be_bytes(buf[48..56].try_into().unwrap());
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/wal.rs:1409:52
[INFO] [stdout]      |
[INFO] [stdout] 1409 |         let (config, m) = Self::decode_config(&buf[n..])?;
[INFO] [stdout]      |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/wal.rs:1411:56
[INFO] [stdout]      |
[INFO] [stdout] 1411 |         let (votedfor, m) = Self::decode_votedfor(&buf[n..])?;
[INFO] [stdout]      |                                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1416:23
[INFO] [stdout]      |
[INFO] [stdout] 1416 |             for _i in 0..entries.capacity() {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/wal.rs:1418:40
[INFO] [stdout]      |
[INFO] [stdout] 1418 |                 n += entry.decode(&buf[n..])?;
[INFO] [stdout]      |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1461:19
[INFO] [stdout]      |
[INFO] [stdout] 1461 |         for _i in 0..count {
[INFO] [stdout]      |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1463:46
[INFO] [stdout]      |
[INFO] [stdout] 1463 |             let len = u16::from_be_bytes(buf[n..n + 2].try_into().unwrap());
[INFO] [stdout]      |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1468:46
[INFO] [stdout]      |
[INFO] [stdout] 1468 |             let s = std::str::from_utf8(&buf[n..n + m])?;
[INFO] [stdout]      |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1489:38
[INFO] [stdout]      |
[INFO] [stdout] 1489 |         Ok((std::str::from_utf8(&buf[n..n + len])?.to_string(), n + len))
[INFO] [stdout]      |                                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1499:40
[INFO] [stdout]      |
[INFO] [stdout] 1499 |                 u64::from_be_bytes(buf[n - 8..n].try_into().unwrap())
[INFO] [stdout]      |                                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1510:44
[INFO] [stdout]      |
[INFO] [stdout] 1510 |         if BATCH_MARKER.as_slice() != &buf[m..n] {
[INFO] [stdout]      |                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1511:57
[INFO] [stdout]      |
[INFO] [stdout] 1511 |             let msg = format!("batch-marker {:?}", &buf[m..n]);
[INFO] [stdout]      |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1773:40
[INFO] [stdout]      |
[INFO] [stdout] 1773 |         *term = u64::from_be_bytes(buf[8..16].try_into().unwrap());
[INFO] [stdout]      |                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1774:41
[INFO] [stdout]      |
[INFO] [stdout] 1774 |         *index = u64::from_be_bytes(buf[16..24].try_into().unwrap());
[INFO] [stdout]      |                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/wal.rs:1775:32
[INFO] [stdout]      |
[INFO] [stdout] 1775 |         Ok(24 + op.decode(&buf[24..])?)
[INFO] [stdout]      |                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1822:40
[INFO] [stdout]      |
[INFO] [stdout] 1822 |         *term = u64::from_be_bytes(buf[8..16].try_into().unwrap());
[INFO] [stdout]      |                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1823:41
[INFO] [stdout]      |
[INFO] [stdout] 1823 |         *index = u64::from_be_bytes(buf[16..24].try_into().unwrap());
[INFO] [stdout]      |                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1824:38
[INFO] [stdout]      |
[INFO] [stdout] 1824 |         *id = u64::from_be_bytes(buf[24..32].try_into().unwrap());
[INFO] [stdout]      |                                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1825:41
[INFO] [stdout]      |
[INFO] [stdout] 1825 |         *ceqno = u64::from_be_bytes(buf[32..40].try_into().unwrap());
[INFO] [stdout]      |                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/wal.rs:1826:32
[INFO] [stdout]      |
[INFO] [stdout] 1826 |         Ok(40 + op.decode(&buf[40..])?)
[INFO] [stdout]      |                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2028:13
[INFO] [stdout]      |
[INFO] [stdout] 2028 |         buf[n..n + 8].copy_from_slice(&hdr1.to_be_bytes());
[INFO] [stdout]      |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2029:13
[INFO] [stdout]      |
[INFO] [stdout] 2029 |         buf[n + 8..n + 16].copy_from_slice(&vlen.to_be_bytes());
[INFO] [stdout]      |             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2040:47
[INFO] [stdout]      |
[INFO] [stdout] 2040 |             let vlen = u64::from_be_bytes(buf[8..16].try_into().unwrap());
[INFO] [stdout]      |                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2047:27
[INFO] [stdout]      |
[INFO] [stdout] 2047 |             k.decode(&buf[n..n + klen])?;
[INFO] [stdout]      |                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2053:27
[INFO] [stdout]      |
[INFO] [stdout] 2053 |             v.decode(&buf[n..n + vlen])?;
[INFO] [stdout]      |                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2096:13
[INFO] [stdout]      |
[INFO] [stdout] 2096 |         buf[n..n + 8].copy_from_slice(&hdr1.to_be_bytes());
[INFO] [stdout]      |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2097:13
[INFO] [stdout]      |
[INFO] [stdout] 2097 |         buf[n + 8..n + 16].copy_from_slice(&vlen.to_be_bytes());
[INFO] [stdout]      |             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2098:13
[INFO] [stdout]      |
[INFO] [stdout] 2098 |         buf[n + 16..n + 24].copy_from_slice(&cas.to_be_bytes());
[INFO] [stdout]      |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2114:47
[INFO] [stdout]      |
[INFO] [stdout] 2114 |             let vlen = u64::from_be_bytes(buf[8..16].try_into().unwrap());
[INFO] [stdout]      |                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2116:46
[INFO] [stdout]      |
[INFO] [stdout] 2116 |             let cas = u64::from_be_bytes(buf[16..24].try_into().unwrap());
[INFO] [stdout]      |                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2123:29
[INFO] [stdout]      |
[INFO] [stdout] 2123 |             key.decode(&buf[n..n + klen])?;
[INFO] [stdout]      |                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2129:31
[INFO] [stdout]      |
[INFO] [stdout] 2129 |             value.decode(&buf[n..n + vlen])?;
[INFO] [stdout]      |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2159:17
[INFO] [stdout]      |
[INFO] [stdout] 2159 |             buf[n..n + 8].copy_from_slice(&hdr1.to_be_bytes());
[INFO] [stdout]      |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2176:29
[INFO] [stdout]      |
[INFO] [stdout] 2176 |             key.decode(&buf[n..n + klen])?;
[INFO] [stdout]      |                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `bind_by_move_pattern_guards` has been stable since 1.39.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> src/lib.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | #![feature(bind_by_move_pattern_guards)]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `drain_filter`
[INFO] [stdout]   --> src/lib.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | #![feature(drain_filter)]
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/core.rs:872:31
[INFO] [stdout]     |
[INFO] [stdout] 872 |         let mut fail = seqnos[0..seqnos.len() - 1]
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/core.rs:874:25
[INFO] [stdout]     |
[INFO] [stdout] 874 |             .zip(seqnos[1..].into_iter())
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lsm_test.rs:721:15
[INFO] [stdout]     |
[INFO] [stdout] 721 |     for _i in 0..1000 {
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lsm_test.rs:828:15
[INFO] [stdout]     |
[INFO] [stdout] 828 |     for _i in 0..1000 {
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lsm_test.rs:916:15
[INFO] [stdout]     |
[INFO] [stdout] 916 |     for _i in 0..1000 {
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/lsm_test.rs:1032:15
[INFO] [stdout]      |
[INFO] [stdout] 1032 |     for _i in 0..1000 {
[INFO] [stdout]      |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/lsm_test.rs:1126:15
[INFO] [stdout]      |
[INFO] [stdout] 1126 |     for _i in 0..1000 {
[INFO] [stdout]      |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/lsm_test.rs:1233:15
[INFO] [stdout]      |
[INFO] [stdout] 1233 |     for _i in 0..1000 {
[INFO] [stdout]      |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/lsm_test.rs:1319:15
[INFO] [stdout]      |
[INFO] [stdout] 1319 |     for _i in 0..1000 {
[INFO] [stdout]      |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/lsm_test.rs:1437:15
[INFO] [stdout]      |
[INFO] [stdout] 1437 |     for _i in 0..1000 {
[INFO] [stdout]      |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/lsm_test.rs:1498:15
[INFO] [stdout]      |
[INFO] [stdout] 1498 |     for _i in 0..n_ops {
[INFO] [stdout]      |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/lsm_test.rs:1551:15
[INFO] [stdout]      |
[INFO] [stdout] 1551 |     for _i in 0..n_ops {
[INFO] [stdout]      |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/lsm_test.rs:1626:15
[INFO] [stdout]      |
[INFO] [stdout] 1626 |     for _i in 0..n_ops {
[INFO] [stdout]      |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/scans_test.rs:89:15
[INFO] [stdout]    |
[INFO] [stdout] 89 |     for _i in 0..n_ops {
[INFO] [stdout]    |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/spinlock_test.rs:24:31
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let value: Vec<u8> = ((idx * c.size)..((idx * c.size) + c.size))
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/spinlock_test.rs:45:10
[INFO] [stdout]    |
[INFO] [stdout] 45 |         (0..res.len()).for_each(|idx| {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/spinlock_test.rs:46:35
[INFO] [stdout]    |
[INFO] [stdout] 46 |             let value: Vec<u8> = ((idx * c.size)..((idx * c.size) + c.size))
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/spinlock_test.rs:70:16
[INFO] [stdout]    |
[INFO] [stdout] 70 |     for idx in 0..c.n_writers {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/spinlock_test.rs:78:17
[INFO] [stdout]    |
[INFO] [stdout] 78 |     for _idx in 0..c.n_readers {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/spinlock_test.rs:97:31
[INFO] [stdout]    |
[INFO] [stdout] 97 |         let value: Vec<u8> = (0..size).map(|x| x as u8).collect();
[INFO] [stdout]    |                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/spinlock_test.rs:143:21
[INFO] [stdout]     |
[INFO] [stdout] 143 |     let acc: u64 = (0..count).map(|_| random::<u32>() as u64).sum();
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util_test.rs:82:22
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fd.read(&mut txt[0..35]).expect("read failed");
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/vlog.rs:112:21
[INFO] [stdout]     |
[INFO] [stdout] 112 |                 buf[m..m + 8].copy_from_slice(&hdr1.to_be_bytes());
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/vlog.rs:143:25
[INFO] [stdout]     |
[INFO] [stdout] 143 |     value.decode(&block[8..])?;
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/vlog.rs:236:21
[INFO] [stdout]     |
[INFO] [stdout] 236 |                 buf[m..m + 8].copy_from_slice(&hdr1.to_be_bytes());
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/vlog.rs:252:25
[INFO] [stdout]     |
[INFO] [stdout] 252 |     delta.decode(&block[8..])?;
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/types.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         buf[n..n + scratch.len()].copy_from_slice(&scratch);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/types.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |         buf[n..].copy_from_slice(self);
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/types.rs:85:35
[INFO] [stdout]    |
[INFO] [stdout] 85 |         self.copy_from_slice(&buf[4..len + 4]);
[INFO] [stdout]    |                                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/types.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |         buf[n..].copy_from_slice(&self.to_be_bytes());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/types.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         buf[n..].copy_from_slice(&self.to_be_bytes());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/./ref_test.rs:66:10
[INFO] [stdout]    |
[INFO] [stdout] 66 |         (0..capacity).for_each(|_| entries.push(Default::default()));
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/./ref_test.rs:111:27
[INFO] [stdout]     |
[INFO] [stdout] 111 |             &self.entries[low..high]
[INFO] [stdout]     |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/./ref_test.rs:140:27
[INFO] [stdout]     |
[INFO] [stdout] 140 |             &self.entries[low..high]
[INFO] [stdout]     |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/llrb_test.rs:62:14
[INFO] [stdout]    |
[INFO] [stdout] 62 |     for i in 0..10 {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/llrb_test.rs:147:14
[INFO] [stdout]     |
[INFO] [stdout] 147 |     for i in 0..11 {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/llrb_test.rs:211:14
[INFO] [stdout]     |
[INFO] [stdout] 211 |     for i in 0..10 {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/llrb_test.rs:298:14
[INFO] [stdout]     |
[INFO] [stdout] 298 |     for _ in 0..1_000 {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/llrb_test.rs:400:14
[INFO] [stdout]     |
[INFO] [stdout] 400 |     for _ in 0..100000 {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/llrb_test.rs:451:14
[INFO] [stdout]     |
[INFO] [stdout] 451 |     for _ in 0..10000 {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/llrb_test.rs:481:15
[INFO] [stdout]     |
[INFO] [stdout] 481 |     for _i in 0..20000 {
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/llrb_test.rs:534:14
[INFO] [stdout]     |
[INFO] [stdout] 534 |     for _ in 0..3000 {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/llrb_test.rs:563:16
[INFO] [stdout]     |
[INFO] [stdout] 563 |     for key in 0..10000 {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/llrb_test.rs:582:17
[INFO] [stdout]     |
[INFO] [stdout] 582 |     for key in (0..1000).step_by(3) {
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/llrb_test.rs:604:17
[INFO] [stdout]     |
[INFO] [stdout] 604 |     for key in (0..1000).step_by(3) {
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/llrb_test.rs:608:17
[INFO] [stdout]     |
[INFO] [stdout] 608 |     for key in (0..1000).step_by(5) {
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/llrb_test.rs:619:17
[INFO] [stdout]     |
[INFO] [stdout] 619 |     for key in (0..1000).step_by(15) {
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/mvcc_test.rs:60:14
[INFO] [stdout]    |
[INFO] [stdout] 60 |     for i in 0..10 {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mvcc_test.rs:144:14
[INFO] [stdout]     |
[INFO] [stdout] 144 |     for i in 0..11 {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mvcc_test.rs:205:14
[INFO] [stdout]     |
[INFO] [stdout] 205 |     for i in 0..10 {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mvcc_test.rs:292:14
[INFO] [stdout]     |
[INFO] [stdout] 292 |     for _ in 0..1_000 {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mvcc_test.rs:330:14
[INFO] [stdout]     |
[INFO] [stdout] 330 |     for _ in 0..100000 {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mvcc_test.rs:381:14
[INFO] [stdout]     |
[INFO] [stdout] 381 |     for _ in 0..10000 {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mvcc_test.rs:411:15
[INFO] [stdout]     |
[INFO] [stdout] 411 |     for _i in 0..20000 {
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mvcc_test.rs:463:14
[INFO] [stdout]     |
[INFO] [stdout] 463 |     for _ in 0..3000 {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mvcc_test.rs:492:16
[INFO] [stdout]     |
[INFO] [stdout] 492 |     for key in 0..10000 {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mvcc_test.rs:511:17
[INFO] [stdout]     |
[INFO] [stdout] 511 |     for key in (0..1000).step_by(3) {
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mvcc_test.rs:533:17
[INFO] [stdout]     |
[INFO] [stdout] 533 |     for key in (0..1000).step_by(3) {
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mvcc_test.rs:537:17
[INFO] [stdout]     |
[INFO] [stdout] 537 |     for key in (0..1000).step_by(5) {
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/mvcc_test.rs:548:17
[INFO] [stdout]     |
[INFO] [stdout] 548 |     for key in (0..1000).step_by(15) {
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:519:21
[INFO] [stdout]     |
[INFO] [stdout] 519 |                 hdr[0..8].copy_from_slice(&fpos.to_be_bytes());
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:522:21
[INFO] [stdout]     |
[INFO] [stdout] 522 |                 hdr[8..16].copy_from_slice(&(md.len() as u64).to_be_bytes());
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:526:21
[INFO] [stdout]     |
[INFO] [stdout] 526 |                 hdr[16..24].copy_from_slice(&(s.len() as u64).to_be_bytes());
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:530:21
[INFO] [stdout]     |
[INFO] [stdout] 530 |                 hdr[24..32].copy_from_slice(&(data.len() as u64).to_be_bytes());
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:542:23
[INFO] [stdout]     |
[INFO] [stdout] 542 |     block.copy_within(0..m, shift);
[INFO] [stdout]     |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:572:39
[INFO] [stdout]     |
[INFO] [stdout] 572 |     let n_md = u64::from_be_bytes(hdr[8..16].try_into().unwrap()) as usize;
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:573:42
[INFO] [stdout]     |
[INFO] [stdout] 573 |     let n_stats = u64::from_be_bytes(hdr[16..24].try_into().unwrap()) as usize;
[INFO] [stdout]     |                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:574:43
[INFO] [stdout]     |
[INFO] [stdout] 574 |     let n_marker = u64::from_be_bytes(hdr[24..32].try_into().unwrap()) as usize;
[INFO] [stdout]     |                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:587:24
[INFO] [stdout]     |
[INFO] [stdout] 587 |     let marker = block[x..y].to_vec();
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:594:44
[INFO] [stdout]     |
[INFO] [stdout] 594 |     let stats = std::str::from_utf8(&block[x..y])?.to_string();
[INFO] [stdout]     |                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt.rs:597:26
[INFO] [stdout]     |
[INFO] [stdout] 597 |     let app_data = block[x..y].to_vec();
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/robt.rs:943:10
[INFO] [stdout]     |
[INFO] [stdout] 943 |         };
[INFO] [stdout]     |          ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_test.rs:79:30
[INFO] [stdout]    |
[INFO] [stdout] 79 |     let app_meta: Vec<u8> = (0..len2).map(|x| (x % 256) as u8).collect();
[INFO] [stdout]    |                              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_test.rs:195:14
[INFO] [stdout]     |
[INFO] [stdout] 195 |     for i in 0..repeat {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_test.rs:205:19
[INFO] [stdout]     |
[INFO] [stdout] 205 |         for _i in 0..n_ops {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_test.rs:315:18
[INFO] [stdout]     |
[INFO] [stdout] 315 |         for j in 0..100 {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_entry.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 |             buf[m..m + 8].copy_from_slice(&hdr1);
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_entry.rs:69:17
[INFO] [stdout]    |
[INFO] [stdout] 69 |             buf[m + 8..m + 16].copy_from_slice(&fpos.to_be_bytes());
[INFO] [stdout]    |                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_entry.rs:82:45
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let hdr1 = u64::from_be_bytes(entry[0..8].try_into().unwrap());
[INFO] [stdout]    |                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_entry.rs:83:45
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let fpos = u64::from_be_bytes(entry[8..16].try_into().unwrap());
[INFO] [stdout]    |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_entry.rs:95:49
[INFO] [stdout]    |
[INFO] [stdout] 95 |             let hdr1 = u64::from_be_bytes(entry[0..8].try_into().unwrap());
[INFO] [stdout]    |                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_entry.rs:99:27
[INFO] [stdout]    |
[INFO] [stdout] 99 |         key.decode(&entry[16..16 + klen])?;
[INFO] [stdout]    |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:197:40
[INFO] [stdout]     |
[INFO] [stdout] 197 |             let scratch: [u8; 8] = buf[16..24].try_into().unwrap();
[INFO] [stdout]     |                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:199:17
[INFO] [stdout]     |
[INFO] [stdout] 199 |             buf[16..24].copy_from_slice(&fpos.to_be_bytes());
[INFO] [stdout]     |                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:211:47
[INFO] [stdout]     |
[INFO] [stdout] 211 |             let hdr1 = u64::from_be_bytes(buf[0..8].try_into().unwrap());
[INFO] [stdout]     |                                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:215:44
[INFO] [stdout]     |
[INFO] [stdout] 215 |         let seqno = u64::from_be_bytes(buf[8..16].try_into().unwrap());
[INFO] [stdout]     |                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:216:43
[INFO] [stdout]     |
[INFO] [stdout] 216 |         let fpos = u64::from_be_bytes(buf[16..24].try_into().unwrap());
[INFO] [stdout]     |                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:376:29
[INFO] [stdout]     |
[INFO] [stdout] 376 |         let hdr = &mut leaf[m..m + 24];
[INFO] [stdout]     |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:402:29
[INFO] [stdout]     |
[INFO] [stdout] 402 |         let hdr = &mut leaf[m..m + 24];
[INFO] [stdout]     |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:434:13
[INFO] [stdout]     |
[INFO] [stdout] 434 |         hdr[8..16].copy_from_slice(&hdr2);
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:435:13
[INFO] [stdout]     |
[INFO] [stdout] 435 |         hdr[16..24].copy_from_slice(&hdr3);
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:508:18
[INFO] [stdout]     |
[INFO] [stdout] 508 |         for i in 0..n_deltas {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:510:54
[INFO] [stdout]     |
[INFO] [stdout] 510 |             DiskDelta::<V>::re_encode_fpos(&mut leaf[n..], vpos);
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:516:41
[INFO] [stdout]     |
[INFO] [stdout] 516 |             let scratch: [u8; 8] = leaf[8..16].try_into().unwrap();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:520:41
[INFO] [stdout]     |
[INFO] [stdout] 520 |             let scratch: [u8; 8] = leaf[voff..voff + 8].try_into().unwrap();
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:522:18
[INFO] [stdout]     |
[INFO] [stdout] 522 |             leaf[voff..voff + 8].copy_from_slice(&fpos.to_be_bytes());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:545:45
[INFO] [stdout]     |
[INFO] [stdout] 545 |             let hdr1 = u64::from_be_bytes(e[0..8].try_into().unwrap());
[INFO] [stdout]     |                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:551:45
[INFO] [stdout]     |
[INFO] [stdout] 551 |             let hdr2 = u64::from_be_bytes(e[8..16].try_into().unwrap());
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:558:42
[INFO] [stdout]     |
[INFO] [stdout] 558 |         let seqno = u64::from_be_bytes(e[16..24].try_into().unwrap());
[INFO] [stdout]     |                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:561:23
[INFO] [stdout]     |
[INFO] [stdout] 561 |         key.decode(&e[24..24 + klen])?;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:567:49
[INFO] [stdout]     |
[INFO] [stdout] 567 |                 let fpos = u64::from_be_bytes(e[n..n + 8].try_into().unwrap());
[INFO] [stdout]     |                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:574:33
[INFO] [stdout]     |
[INFO] [stdout] 574 |                 value.decode(&e[n..n + vlen])?;
[INFO] [stdout]     |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:583:19
[INFO] [stdout]     |
[INFO] [stdout] 583 |         for _i in 0..n_deltas {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:584:52
[INFO] [stdout]     |
[INFO] [stdout] 584 |             deltas.push(DiskDelta::decode_delta(&e[n..])?);
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:596:49
[INFO] [stdout]     |
[INFO] [stdout] 596 |             let hdr1 = u64::from_be_bytes(entry[0..8].try_into().unwrap());
[INFO] [stdout]     |                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_entry.rs:600:27
[INFO] [stdout]     |
[INFO] [stdout] 600 |         key.decode(&entry[24..24 + klen])?;
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:154:40
[INFO] [stdout]     |
[INFO] [stdout] 154 |                     mblock.copy_within(0..m, adjust);
[INFO] [stdout]     |                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:164:28
[INFO] [stdout]     |
[INFO] [stdout] 164 |                     mblock[x..x + 4].copy_from_slice(&offset_bytes);
[INFO] [stdout]     |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:208:30
[INFO] [stdout]     |
[INFO] [stdout] 208 |         let offsets = &block[4..adjust] as *const [u8];
[INFO] [stdout]     |                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:326:34
[INFO] [stdout]     |
[INFO] [stdout] 326 |             let offset = offsets[idx..idx + 4].try_into().unwrap();
[INFO] [stdout]     |                                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_index.rs:328:44
[INFO] [stdout]     |
[INFO] [stdout] 328 |             Ok(MEntry::decode_entry(&block[offset..], index))
[INFO] [stdout]     |                                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:346:34
[INFO] [stdout]     |
[INFO] [stdout] 346 |             let offset = offsets[idx..idx + 4].try_into().unwrap();
[INFO] [stdout]     |                                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_index.rs:348:39
[INFO] [stdout]     |
[INFO] [stdout] 348 |             MEntry::decode_key(&block[offset..])
[INFO] [stdout]     |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:527:38
[INFO] [stdout]     |
[INFO] [stdout] 527 |                     leaf.copy_within(0..m, adjust);
[INFO] [stdout]     |                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:537:26
[INFO] [stdout]     |
[INFO] [stdout] 537 |                     leaf[x..x + 4].copy_from_slice(&offset_bytes);
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_index.rs:540:58
[INFO] [stdout]     |
[INFO] [stdout] 540 |                     zentries[i].re_encode_fpos(&mut leaf[j..], *vpos);
[INFO] [stdout]     |                                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:597:30
[INFO] [stdout]     |
[INFO] [stdout] 597 |         let offsets = &block[4..adjust] as *const [u8];
[INFO] [stdout]     |                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:684:34
[INFO] [stdout]     |
[INFO] [stdout] 684 |             let offset = offsets[idx..idx + 4].try_into().unwrap();
[INFO] [stdout]     |                                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_index.rs:686:32
[INFO] [stdout]     |
[INFO] [stdout] 686 |             let entry = &block[offset..];
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index.rs:699:30
[INFO] [stdout]     |
[INFO] [stdout] 699 |         let offset = offsets[idx..idx + 4].try_into().unwrap();
[INFO] [stdout]     |                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/robt_index.rs:701:28
[INFO] [stdout]     |
[INFO] [stdout] 701 |         let entry = &block[offset..];
[INFO] [stdout]     |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/robt_index_test.rs:15:14
[INFO] [stdout]    |
[INFO] [stdout] 15 |     for i in 0..100000 {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index_test.rs:122:14
[INFO] [stdout]     |
[INFO] [stdout] 122 |     for i in 0..100000 {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index_test.rs:397:43
[INFO] [stdout]     |
[INFO] [stdout] 397 |                     let s: [u8; 4] = blob[doff + 8..doff + 12].try_into().unwrap();
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index_test.rs:497:39
[INFO] [stdout]     |
[INFO] [stdout] 497 |                 let s: [u8; 4] = blob[voff + 8..voff + 12].try_into().unwrap();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index_test.rs:601:39
[INFO] [stdout]     |
[INFO] [stdout] 601 |                 let s: [u8; 4] = blob[voff + 8..voff + 12].try_into().unwrap();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index_test.rs:627:43
[INFO] [stdout]     |
[INFO] [stdout] 627 |                     let s: [u8; 4] = blob[doff + 8..doff + 12].try_into().unwrap();
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index_test.rs:651:14
[INFO] [stdout]     |
[INFO] [stdout] 651 |     for i in 0..n {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/robt_index_test.rs:658:15
[INFO] [stdout]     |
[INFO] [stdout] 658 |     for _i in 0..(entries.len() * 3) {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wal.rs:310:41
[INFO] [stdout]     |
[INFO] [stdout] 310 |                 let zi = shard.journals[1..].iter();
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wal.rs:901:52
[INFO] [stdout]     |
[INFO] [stdout] 901 |                     m += batch.decode_refer(&block[m..], fpos + (m as u64))?;
[INFO] [stdout]     |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1387:50
[INFO] [stdout]      |
[INFO] [stdout] 1387 |         let start_index = u64::from_be_bytes(buf[32..40].try_into().unwrap());
[INFO] [stdout]      |                                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1388:49
[INFO] [stdout]      |
[INFO] [stdout] 1388 |         let last_index = u64::from_be_bytes(buf[40..48].try_into().unwrap());
[INFO] [stdout]      |                                                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1401:43
[INFO] [stdout]      |
[INFO] [stdout] 1401 |         let term = u64::from_be_bytes(buf[8..16].try_into().unwrap());
[INFO] [stdout]      |                                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1402:48
[INFO] [stdout]      |
[INFO] [stdout] 1402 |         let committed = u64::from_be_bytes(buf[16..24].try_into().unwrap());
[INFO] [stdout]      |                                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1403:48
[INFO] [stdout]      |
[INFO] [stdout] 1403 |         let persisted = u64::from_be_bytes(buf[24..32].try_into().unwrap());
[INFO] [stdout]      |                                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1404:51
[INFO] [stdout]      |
[INFO] [stdout] 1404 |         let _start_index = u64::from_be_bytes(buf[32..40].try_into().unwrap());
[INFO] [stdout]      |                                                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1405:50
[INFO] [stdout]      |
[INFO] [stdout] 1405 |         let _last_index = u64::from_be_bytes(buf[40..48].try_into().unwrap());
[INFO] [stdout]      |                                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1406:47
[INFO] [stdout]      |
[INFO] [stdout] 1406 |         let nentries = u64::from_be_bytes(buf[48..56].try_into().unwrap());
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/wal.rs:1409:52
[INFO] [stdout]      |
[INFO] [stdout] 1409 |         let (config, m) = Self::decode_config(&buf[n..])?;
[INFO] [stdout]      |                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/wal.rs:1411:56
[INFO] [stdout]      |
[INFO] [stdout] 1411 |         let (votedfor, m) = Self::decode_votedfor(&buf[n..])?;
[INFO] [stdout]      |                                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1416:23
[INFO] [stdout]      |
[INFO] [stdout] 1416 |             for _i in 0..entries.capacity() {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/wal.rs:1418:40
[INFO] [stdout]      |
[INFO] [stdout] 1418 |                 n += entry.decode(&buf[n..])?;
[INFO] [stdout]      |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1461:19
[INFO] [stdout]      |
[INFO] [stdout] 1461 |         for _i in 0..count {
[INFO] [stdout]      |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1463:46
[INFO] [stdout]      |
[INFO] [stdout] 1463 |             let len = u16::from_be_bytes(buf[n..n + 2].try_into().unwrap());
[INFO] [stdout]      |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1468:46
[INFO] [stdout]      |
[INFO] [stdout] 1468 |             let s = std::str::from_utf8(&buf[n..n + m])?;
[INFO] [stdout]      |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1489:38
[INFO] [stdout]      |
[INFO] [stdout] 1489 |         Ok((std::str::from_utf8(&buf[n..n + len])?.to_string(), n + len))
[INFO] [stdout]      |                                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1499:40
[INFO] [stdout]      |
[INFO] [stdout] 1499 |                 u64::from_be_bytes(buf[n - 8..n].try_into().unwrap())
[INFO] [stdout]      |                                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1510:44
[INFO] [stdout]      |
[INFO] [stdout] 1510 |         if BATCH_MARKER.as_slice() != &buf[m..n] {
[INFO] [stdout]      |                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1511:57
[INFO] [stdout]      |
[INFO] [stdout] 1511 |             let msg = format!("batch-marker {:?}", &buf[m..n]);
[INFO] [stdout]      |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1773:40
[INFO] [stdout]      |
[INFO] [stdout] 1773 |         *term = u64::from_be_bytes(buf[8..16].try_into().unwrap());
[INFO] [stdout]      |                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1774:41
[INFO] [stdout]      |
[INFO] [stdout] 1774 |         *index = u64::from_be_bytes(buf[16..24].try_into().unwrap());
[INFO] [stdout]      |                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/wal.rs:1775:32
[INFO] [stdout]      |
[INFO] [stdout] 1775 |         Ok(24 + op.decode(&buf[24..])?)
[INFO] [stdout]      |                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1822:40
[INFO] [stdout]      |
[INFO] [stdout] 1822 |         *term = u64::from_be_bytes(buf[8..16].try_into().unwrap());
[INFO] [stdout]      |                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1823:41
[INFO] [stdout]      |
[INFO] [stdout] 1823 |         *index = u64::from_be_bytes(buf[16..24].try_into().unwrap());
[INFO] [stdout]      |                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1824:38
[INFO] [stdout]      |
[INFO] [stdout] 1824 |         *id = u64::from_be_bytes(buf[24..32].try_into().unwrap());
[INFO] [stdout]      |                                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:1825:41
[INFO] [stdout]      |
[INFO] [stdout] 1825 |         *ceqno = u64::from_be_bytes(buf[32..40].try_into().unwrap());
[INFO] [stdout]      |                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/wal.rs:1826:32
[INFO] [stdout]      |
[INFO] [stdout] 1826 |         Ok(40 + op.decode(&buf[40..])?)
[INFO] [stdout]      |                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2028:13
[INFO] [stdout]      |
[INFO] [stdout] 2028 |         buf[n..n + 8].copy_from_slice(&hdr1.to_be_bytes());
[INFO] [stdout]      |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2029:13
[INFO] [stdout]      |
[INFO] [stdout] 2029 |         buf[n + 8..n + 16].copy_from_slice(&vlen.to_be_bytes());
[INFO] [stdout]      |             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2040:47
[INFO] [stdout]      |
[INFO] [stdout] 2040 |             let vlen = u64::from_be_bytes(buf[8..16].try_into().unwrap());
[INFO] [stdout]      |                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2047:27
[INFO] [stdout]      |
[INFO] [stdout] 2047 |             k.decode(&buf[n..n + klen])?;
[INFO] [stdout]      |                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2053:27
[INFO] [stdout]      |
[INFO] [stdout] 2053 |             v.decode(&buf[n..n + vlen])?;
[INFO] [stdout]      |                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2096:13
[INFO] [stdout]      |
[INFO] [stdout] 2096 |         buf[n..n + 8].copy_from_slice(&hdr1.to_be_bytes());
[INFO] [stdout]      |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2097:13
[INFO] [stdout]      |
[INFO] [stdout] 2097 |         buf[n + 8..n + 16].copy_from_slice(&vlen.to_be_bytes());
[INFO] [stdout]      |             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2098:13
[INFO] [stdout]      |
[INFO] [stdout] 2098 |         buf[n + 16..n + 24].copy_from_slice(&cas.to_be_bytes());
[INFO] [stdout]      |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2114:47
[INFO] [stdout]      |
[INFO] [stdout] 2114 |             let vlen = u64::from_be_bytes(buf[8..16].try_into().unwrap());
[INFO] [stdout]      |                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2116:46
[INFO] [stdout]      |
[INFO] [stdout] 2116 |             let cas = u64::from_be_bytes(buf[16..24].try_into().unwrap());
[INFO] [stdout]      |                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2123:29
[INFO] [stdout]      |
[INFO] [stdout] 2123 |             key.decode(&buf[n..n + klen])?;
[INFO] [stdout]      |                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2129:31
[INFO] [stdout]      |
[INFO] [stdout] 2129 |             value.decode(&buf[n..n + vlen])?;
[INFO] [stdout]      |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2159:17
[INFO] [stdout]      |
[INFO] [stdout] 2159 |             buf[n..n + 8].copy_from_slice(&hdr1.to_be_bytes());
[INFO] [stdout]      |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/wal.rs:2176:29
[INFO] [stdout]      |
[INFO] [stdout] 2176 |             key.decode(&buf[n..n + klen])?;
[INFO] [stdout]      |                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wal_test.rs:137:36
[INFO] [stdout]     |
[INFO] [stdout] 137 |         for (i, ref_op) in ref_ops[213..].to_vec().into_iter().enumerate() {
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wal_test.rs:163:36
[INFO] [stdout]     |
[INFO] [stdout] 163 |         for (i, ref_op) in ref_ops[213..].to_vec().into_iter().enumerate() {
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/wal_test.rs:687:16
[INFO] [stdout]     |
[INFO] [stdout] 687 |     for key in 1..=300_i32 {
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/wal_test.rs:695:16
[INFO] [stdout]     |
[INFO] [stdout] 695 |     for key in 1..=300_i32 {
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/wal_test.rs:705:16
[INFO] [stdout]     |
[INFO] [stdout] 705 |     for key in 1..=10_i32 {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/wal_test.rs:719:16
[INFO] [stdout]     |
[INFO] [stdout] 719 |     for key in 1001..=1300_i32 {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/wal_test.rs:727:16
[INFO] [stdout]     |
[INFO] [stdout] 727 |     for key in 1001..=1300_i32 {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/wal_test.rs:736:16
[INFO] [stdout]     |
[INFO] [stdout] 736 |     for key in 1001..=1010_i32 {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wal_test.rs:747:38
[INFO] [stdout]     |
[INFO] [stdout] 747 |     let files: Vec<ffi::OsString> = (1..4)
[INFO] [stdout]     |                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wal_test.rs:771:55
[INFO] [stdout]     |
[INFO] [stdout] 771 |         let ref_ops: Vec<(usize, Op<i32, i32>)> = ops[(a - 1)..(z - 1)]
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wal_test.rs:785:38
[INFO] [stdout]     |
[INFO] [stdout] 785 |     let files: Vec<ffi::OsString> = (2..4)
[INFO] [stdout]     |                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wal_test.rs:807:55
[INFO] [stdout]     |
[INFO] [stdout] 807 |         let ref_ops: Vec<(usize, Op<i32, i32>)> = ops[(a - 1)..(z - 1)]
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wal_test.rs:821:38
[INFO] [stdout]     |
[INFO] [stdout] 821 |     let files: Vec<ffi::OsString> = (2..11)
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wal_test.rs:857:59
[INFO] [stdout]     |
[INFO] [stdout] 857 |             let ref_ops: Vec<(usize, Op<i32, i32>)> = ops[(a - 1)..(z - 1)]
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/spinlock.rs:84:31
[INFO] [stdout]    |
[INFO] [stdout] 84 |                 if self.value.compare_and_swap(c, n, SeqCst) == c {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/spinlock.rs:108:31
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 if self.value.compare_and_swap(c, n, SeqCst) == c {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/spinlock.rs:122:31
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 if self.value.compare_and_swap(c, n, SeqCst) == c {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/spinlock.rs:160:28
[INFO] [stdout]     |
[INFO] [stdout] 160 |         if self.door.value.compare_and_swap(c, 0, SeqCst) != c {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/sync_writer.rs:22:25
[INFO] [stdout]    |
[INFO] [stdout] 22 |         if self.writers.compare_and_swap(0, 1, AcqRel) != 0 {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/sync_writer.rs:35:31
[INFO] [stdout]    |
[INFO] [stdout] 35 |         if self.fence.writers.compare_and_swap(1, 0, AcqRel) != 1 {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `bind_by_move_pattern_guards` has been stable since 1.39.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> src/lib.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | #![feature(bind_by_move_pattern_guards)]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `drain_filter`
[INFO] [stdout]   --> src/lib.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | #![feature(drain_filter)]
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `drain_filter` found for struct `Vec<Journal<K, V>>` in the current scope
[INFO] [stdout]    --> src/wal.rs:300:18
[INFO] [stdout]     |
[INFO] [stdout] 298 |               let journals: Vec<Journal<K, V>> = self
[INFO] [stdout]     |  ________________________________________________-
[INFO] [stdout] 299 | |                 .journals
[INFO] [stdout] 300 | |                 .drain_filter(|jrn| jrn.shard_id() == id)
[INFO] [stdout]     | |                 -^^^^^^^^^^^^ method not found in `Vec<Journal<K, V>>`
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/spinlock.rs:84:31
[INFO] [stdout]    |
[INFO] [stdout] 84 |                 if self.value.compare_and_swap(c, n, SeqCst) == c {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/spinlock.rs:108:31
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 if self.value.compare_and_swap(c, n, SeqCst) == c {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/spinlock.rs:122:31
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 if self.value.compare_and_swap(c, n, SeqCst) == c {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/spinlock.rs:160:28
[INFO] [stdout]     |
[INFO] [stdout] 160 |         if self.door.value.compare_and_swap(c, 0, SeqCst) != c {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/sync_writer.rs:22:25
[INFO] [stdout]    |
[INFO] [stdout] 22 |         if self.writers.compare_and_swap(0, 1, AcqRel) != 0 {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/sync_writer.rs:35:31
[INFO] [stdout]    |
[INFO] [stdout] 35 |         if self.fence.writers.compare_and_swap(1, 0, AcqRel) != 1 {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 118 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0599, E0635.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rdms` (lib) due to 3 previous errors; 118 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0599]: no method named `drain_filter` found for struct `Vec<wal::Journal<K, V>>` in the current scope
[INFO] [stdout]    --> src/wal.rs:300:18
[INFO] [stdout]     |
[INFO] [stdout] 298 |               let journals: Vec<Journal<K, V>> = self
[INFO] [stdout]     |  ________________________________________________-
[INFO] [stdout] 299 | |                 .journals
[INFO] [stdout] 300 | |                 .drain_filter(|jrn| jrn.shard_id() == id)
[INFO] [stdout]     | |                 -^^^^^^^^^^^^ method not found in `Vec<Journal<K, V>>`
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 193 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0599, E0635.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rdms` (lib test) due to 3 previous errors; 193 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "229cf7c427f98ae9524b94f6b2298df3d718419dba8372f69f37392f41f036d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "229cf7c427f98ae9524b94f6b2298df3d718419dba8372f69f37392f41f036d9", kill_on_drop: false }`
[INFO] [stdout] 229cf7c427f98ae9524b94f6b2298df3d718419dba8372f69f37392f41f036d9
